A write operation associated with a redundant array of inexpensive disks, level five (RAID-5) may include reading old parity, reading old data, and subtracting out the old data from the old parity to derive an intermediate result. The operation may also include adding in new data to the intermediate result to derive a new parity value, and writing both the new parity and the new data to disk. The write operation may thus include two reads, two parity calculations, and two writes to complete a host write request. RAID-6 writes may be performed in a similar manner, to further include updating a second error correction redundancy quantity analogous to parity, sometimes called “Q.” Q may coexist with parity and may add an additional read, an additional write, and two Q calculations. Other RAID levels may utilize second error correction redundancy strips analogous to Q, and may be referred to using other names including “second parity.”
In the cases of both RAID-5 and RAID-6, a host RAID controller may not respond to a write request until the previously-described operations are complete. As a result, a RAID-5 write may take as long to complete as four read operations. A RAID-6 write may take as long to complete as six read operations.